A user may request a web page or other content page via a browser or media player operating on the user's computing device in order to stream content. For example, the browser may request content from a server, such as a streaming server. The streaming server may retrieve a file from an origin server that includes content that can be played by the browser, such as audio or video, and transmit the file to the browser. Before the file has been fully transmitted, the browser may begin playing the content included in the file. Once the content has been played, the file may be discarded by the device operating the browser.
If there is any delay in the transmission of the file such that the speed at which the file is played exceeds the speed at which the file is received, the user may be notified of the delay and playback may be paused. Various factors can contribute to this delay. These factors include, for example, (1) the speed of the wireless or wired connection between the user's device and the Internet, (2) the location of, and load on, the streaming server that provides the content, (3) the size of the requested content, and (4) the processing power of the user's device. When the delay is significant (e.g., several seconds or more), the task of playing content can be frustrating for the user.